home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / c / pwrclib.exe / CHARS.C < prev    next >
C/C++ Source or Header  |  1993-02-25  |  2KB  |  82 lines

  1. #include <ctype.h>
  2. #include <string.h>
  3.  
  4. void remove_chars(char *in_line)
  5.  
  6. {
  7.     /* Local variables */
  8.     int counter2, counter3=0;
  9.     char *out_line;
  10.  
  11.     for (counter2=0;counter2<strlen(in_line);counter2++) {
  12.         if (isdigit(in_line[counter2])) {
  13.             out_line[counter3++]=in_line[counter2];
  14.         }
  15.     }
  16.     out_line[counter3++]='\n';
  17.     strcpy(in_line,out_line);
  18. }
  19.  
  20.     
  21.     
  22. void remove_digits(char *in_line)
  23.  
  24. {
  25.     /* Local variables */
  26.     int counter2, counter3=0;
  27.     char *out_line;
  28.  
  29.     for (counter2=0;counter2<strlen(in_line);counter2++) {
  30.         if (isprint(in_line[counter2])) {
  31.             if (isdigit(in_line[counter2]) == 0)
  32.                 out_line[counter3++]=in_line[counter2];
  33.         }
  34.     }
  35.     out_line[counter3++]='\n';
  36.     strcpy(in_line,out_line);
  37. }
  38.  
  39.  
  40.  
  41. void epsonize(char *s, int c)
  42.  
  43. {
  44.     /* Local variables */
  45.     int counter4;
  46.     
  47.     /* Check each character and replace as necessary */
  48.     for (counter4=0;counter4<strlen(s);counter4++) {
  49.         
  50.         if (s[counter4] > 127) {
  51.                     
  52.             switch(s[counter4]) {
  53.                         
  54.                 case 179: case 186:
  55.                     s[counter4] = 124;
  56.                 break;
  57.                 case 180: case 181: case 182: case 185: case 193: 
  58.                 case 194: case 195: case 197: case 198: case 199: 
  59.                 case 202: case 203: case 204: case 206: case 207: 
  60.                 case 208: case 209: case 210: case 215: case 216:
  61.                     s[counter4] = 43;
  62.                 break;
  63.                 case 183: case 184: case 187: case 188: case 189: 
  64.                 case 190: case 191: case 192: case 200: case 201: 
  65.                 case 211: case 212: case 213: case 214: case 217: 
  66.                 case 218:
  67.                     s[counter4] = 42;
  68.                 break;
  69.                 case 196: case 205:
  70.                     s[counter4] = 45;
  71.                 break;
  72.                 case 219: case 220: case 221: case 222: case 223:
  73.                     s[counter4] = 88;
  74.                 break;
  75.                 default:
  76.                     s[counter4]=c;
  77.                 break;
  78.             }
  79.         }
  80.     }
  81. }
  82.